package com.hl.order.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 售后表管理对象 after_sales
 * 
 * @author ruoyi
 * @date 2025-08-09
 */
public class AfterSales extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 售后单id */
    private Long afterSalesId;

    /** 订单id */
    @Excel(name = "订单id")
    private Long orderId;

    /** 商家id */
    @Excel(name = "商家id")
    private Long shopId;

    /** 售后类型：1-未支付订单 2-已支付订单 */
    @Excel(name = "售后类型：1-未支付订单 2-已支付订单")
    private Long afterSalesType;

    /** 退款类型，1:-全部退款，2-部分退款 */
    @Excel(name = "退款类型，1:-全部退款，2-部分退款")
    private Long refundType;

    /** 申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyTime;

    /** 售后原因 */
    @Excel(name = "售后原因")
    private String afterSalesReason;

    /** 退款原因详细描述 */
    @Excel(name = "退款原因详细描述")
    private String refundReasonDescription;

    /** 凭证照片 */
    @Excel(name = "凭证照片")
    private String evidenceImages;

    /** 退款金额 */
    @Excel(name = "退款金额")
    private BigDecimal refundPrice;

    /** 退款时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "退款时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date refundTime;

    /** 退款账户 微信账户或者平台积分 */
    @Excel(name = "退款账户 微信账户或者平台积分")
    private String refundAccount;

    /** 售后进度 */
    @Excel(name = "售后进度")
    private String dealPace;

    /** 处理结果 */
    @Excel(name = "处理结果")
    private String dealResult;

    public void setAfterSalesId(Long afterSalesId) 
    {
        this.afterSalesId = afterSalesId;
    }

    public Long getAfterSalesId() 
    {
        return afterSalesId;
    }

    public void setOrderId(Long orderId) 
    {
        this.orderId = orderId;
    }

    public Long getOrderId() 
    {
        return orderId;
    }

    public void setShopId(Long shopId) 
    {
        this.shopId = shopId;
    }

    public Long getShopId() 
    {
        return shopId;
    }

    public void setAfterSalesType(Long afterSalesType) 
    {
        this.afterSalesType = afterSalesType;
    }

    public Long getAfterSalesType() 
    {
        return afterSalesType;
    }

    public void setRefundType(Long refundType) 
    {
        this.refundType = refundType;
    }

    public Long getRefundType() 
    {
        return refundType;
    }

    public void setApplyTime(Date applyTime) 
    {
        this.applyTime = applyTime;
    }

    public Date getApplyTime() 
    {
        return applyTime;
    }

    public void setAfterSalesReason(String afterSalesReason) 
    {
        this.afterSalesReason = afterSalesReason;
    }

    public String getAfterSalesReason() 
    {
        return afterSalesReason;
    }

    public void setRefundReasonDescription(String refundReasonDescription) 
    {
        this.refundReasonDescription = refundReasonDescription;
    }

    public String getRefundReasonDescription() 
    {
        return refundReasonDescription;
    }

    public void setEvidenceImages(String evidenceImages) 
    {
        this.evidenceImages = evidenceImages;
    }

    public String getEvidenceImages() 
    {
        return evidenceImages;
    }

    public void setRefundPrice(BigDecimal refundPrice) 
    {
        this.refundPrice = refundPrice;
    }

    public BigDecimal getRefundPrice() 
    {
        return refundPrice;
    }

    public void setRefundTime(Date refundTime) 
    {
        this.refundTime = refundTime;
    }

    public Date getRefundTime() 
    {
        return refundTime;
    }

    public void setRefundAccount(String refundAccount) 
    {
        this.refundAccount = refundAccount;
    }

    public String getRefundAccount() 
    {
        return refundAccount;
    }

    public void setDealPace(String dealPace) 
    {
        this.dealPace = dealPace;
    }

    public String getDealPace() 
    {
        return dealPace;
    }

    public void setDealResult(String dealResult) 
    {
        this.dealResult = dealResult;
    }

    public String getDealResult() 
    {
        return dealResult;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("afterSalesId", getAfterSalesId())
            .append("orderId", getOrderId())
            .append("shopId", getShopId())
            .append("afterSalesType", getAfterSalesType())
            .append("refundType", getRefundType())
            .append("applyTime", getApplyTime())
            .append("afterSalesReason", getAfterSalesReason())
            .append("refundReasonDescription", getRefundReasonDescription())
            .append("evidenceImages", getEvidenceImages())
            .append("refundPrice", getRefundPrice())
            .append("refundTime", getRefundTime())
            .append("refundAccount", getRefundAccount())
            .append("dealPace", getDealPace())
            .append("dealResult", getDealResult())
            .toString();
    }
}
